1. Field of the Invention
The present invention relates to a printing device that generates an intermediate language code from a drawing command and printing data, and generates raster data from the intermediate language code for a printout, and a control method thereof.
2. Description of the Related Art
To speed up data processing, speeding up a CPU, or using a multiprocessor or multi-core processor to implement parallel processing can be considered. In order to improve the process speed in parallel processing, it is important in terms of how to select processes to be executed in parallel and how to set and allocate a processing unit.
A drawing process of a printing device normally includes the following two steps:                (1) a step of converting a drawing command acquired from a PC or the like into intermediate language; and        (2) a step of converting the intermediate language into final drawing data (raster data).        
The technique described in Japanese Patent Application Publication No. H8(1996)-154171 (Patent Document 1) enables the implementation of high-speed processing while ensuring the order of drawing to a frame buffer, thus acquiring final output data. This is a technique of parallel processing concerning the above step (2).
The technique described in Japanese Patent Application Publication No. H10(1998)-337932 (Patent Document 2) determines whether parallel processing is possible for image processing based on whether the image processing depending on a position of image data and a pixel value, and reconfigures hardware based on a determination as to whether to execute the image processing by parallel processing. This is a technique covering the whole processing of creating drawing data from data written in PDL (page description language) irrespective of the above steps (1) and (2).
The technique described in Japanese Patent Application Publication No. H10(1998)-100512 (Patent Document 3) individually performs parallel-processing of printing data transmitted from a plurality of sources to convert them into individual intermediate language data, and prints an image in the unit of one page in the order of obtaining the intermediate language data. This is a technique of conducting parallel processing in the units of jobs concerning the above step (1).
In step (1) of the two steps of the above-stated drawing process by a printing device, the previous and the subsequent commands in the order of the drawing commands have a high dependence, and therefore it is not easy to implement this step by parallel processing. The technique of the above-described Patent Document 1 addresses the processing of step (2) for parallel processing and does not consider the processes of step (1) in parallel. The technique of the above-described Patent Document 2 addresses the whole processing of creating drawing data from data written in PDL, which includes a part corresponding to step (1) but requires special hardware for implementation, thus leading to an increase of cost. The technique of the above-described Patent Document 3 addresses step (1). However, this technique intends to, in response to a plurality of job execution requests, execute them in parallel, and therefore the applicable situation is extremely limited.
Therefore, what is needed is to address the processing of the above-stated step (1) to convert a drawing command acquired from a PC or the like into intermediate language, and to execute commands in one or more jobs by parallel processing, thus speeding up the processing.